//---------------------------------------------------------------------------

#ifndef MainH
#define MainH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Buttons.hpp>
#include <ComCtrls.hpp>
#include <Menus.hpp>
#include <ExtCtrls.hpp>
#include <jpeg.hpp>
#include <ActnList.hpp>
//---------------------------------------------------------------------------
class TForm1 : public TForm
{
__published:	// IDE-managed Components
	TGroupBox *GroupBox1;
	TComboBox *MidiPortSelectCombo;
	TBitBtn *MidiPortConnectBtn;
	TGroupBox *GroupBox2;
	TEdit *TempoEdit;
	TUpDown *TempoUpDown;
	TTrackBar *TempoBar;
	TMainMenu *MainMenu1;
	TMenuItem *Setting1;
	TMenuItem *Mixer1;
	TGroupBox *GroupBox3;
	TComboBox *NotePortCombobox;
	TTrackBar *NoteVelocityBar;
	TBitBtn *NoteOnBtn;
	TBitBtn *NoteOffBtn;
	TEdit *NoteOnOffPitchEdit;
	TGroupBox *EmotionModelGroup;
	TImage *EmotionModelImage;
	TMenuItem *Setting2;
	TMenuItem *Fuzzytempotracker1;
	TMenuItem *Enable1;
	TMenuItem *Disable1;
	TMenuItem *RuleTable1;
	TMenuItem *Fixed1;
	TTimer *ChangeTimer;
	TGroupBox *GroupBox4;
	TBitBtn *StartBtn;
	TBitBtn *StopBtn;
	TLabel *Label1;
	TComboBox *ChordCombobox;
	TBitBtn *ChordOnBtn;
	TBitBtn *ChordOffBtn;
	TGroupBox *GroupBox5;
	TTrackBar *PAD_Vol_Bar;
	TTrackBar *Guitar_Vol_Bar;
	TTrackBar *Bass_Vol_Bar;
	TTrackBar *Groove_Vol_Bar;
	TTrackBar *Melody_Vol_Bar;
	TLabel *Label16;
	TLabel *Label2;
	TLabel *Label3;
	TLabel *Label4;
	TLabel *Label5;
	TActionList *ActionList;
	TAction *ShowNotation;
	TAction *HideNotation;
	TGroupBox *GroupBox6;
	TScrollBox *NotationScrollBox;
	TImage *Image1;
	TImage *BarImg1;
	TImage *Image4;
	TImage *BarImg2;
	TImage *Image6;
	TImage *BarImg3;
	TImage *Image8;
	TImage *BarImg4;
	TImage *Image10;
	TImage *BarImg5;
	TLabel *ChordLabel_0;
	TLabel *ChordLabel_1;
	TLabel *ChordLabel_2;
	TLabel *ChordLabel_3;
	TLabel *ChordLabel_4;
	TLabel *ChordLabel_5;
	TLabel *ChordLabel_6;
	TLabel *ChordLabel_7;
	TLabel *ChordLabel_8;
	TLabel *ChordLabel_9;
	TLabel *ChordLabel_10;
	TLabel *ChordLabel_11;
	TLabel *ChordLabel_12;
	TLabel *ChordLabel_13;
	TLabel *ChordLabel_14;
	TLabel *ChordLabel_15;
	TLabel *ChordLabel_16;
	TLabel *ChordLabel_17;
	TLabel *ChordLabel_18;
	TLabel *ChordLabel_19;
	TMenuItem *LearningPerformanceTest1;
	TAction *ShowFormLearning;
	void __fastcall TempoBarChange(TObject *Sender);
	void __fastcall TempoUpDownClick(TObject *Sender, TUDBtnType Button);
	void __fastcall MidiPortConnectBtnClick(TObject *Sender);
	void __fastcall MidiPortSelectComboChange(TObject *Sender);
	void __fastcall NoteOnBtnClick(TObject *Sender);
	void __fastcall Mixer1Click(TObject *Sender);
	void __fastcall NoteOffBtnClick(TObject *Sender);
	void __fastcall EmotionModelImageMouseMove(TObject *Sender, TShiftState Shift, int X,
          int Y);
	void __fastcall EmotionModelImageMouseDown(TObject *Sender, TMouseButton Button,
          TShiftState Shift, int X, int Y);
	void __fastcall EmotionModelImageMouseUp(TObject *Sender, TMouseButton Button, TShiftState Shift,
          int X, int Y);
	void __fastcall RuleTable1Click(TObject *Sender);
	void __fastcall Enable1Click(TObject *Sender);
	void __fastcall Disable1Click(TObject *Sender);
	void __fastcall Fixed1Click(TObject *Sender);
	void __fastcall ChangeTimerTimer(TObject *Sender);
	void __fastcall StartBtnClick(TObject *Sender);
	void __fastcall StopBtnClick(TObject *Sender);
	void __fastcall ChordOnBtnClick(TObject *Sender);
	void __fastcall ChordOffBtnClick(TObject *Sender);
	void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
	void __fastcall ShowNotationExecute(TObject *Sender);
	void __fastcall HideNotationExecute(TObject *Sender);
	void __fastcall FormMouseWheel(TObject *Sender, TShiftState Shift, int WheelDelta,
          TPoint &MousePos, bool &Handled);
	void __fastcall LearningPerformanceTest1Click(TObject *Sender);
	void __fastcall ShowFormLearningExecute(TObject *Sender);
private:	// User declarations
public:		// User declarations
	__fastcall TForm1(TComponent* Owner);
};
//---------------------------------------------------------------------------
extern PACKAGE TForm1 *Form1;
//---------------------------------------------------------------------------
#endif
